package com.umeox.moto.common.log;

import com.umeox.moto.common.BuildConfig;

import timber.log.Timber;


public class Logger {
    private static final String TAG = "Logger";

    public static void v(String msg) {
        if (BuildConfig.LOG_DEBUG)
            Timber.v(msg);
    }

    public static void v(String tag, String msg, Throwable tr) {
        if (BuildConfig.LOG_DEBUG) {
            Timber.tag(tag).v(tr, msg);
        }
    }

    public static void d(String tag, String msg) {
        if (BuildConfig.LOG_DEBUG)
            Timber.tag(tag).d(msg);
    }

    public static void d(String msg) {
        if (BuildConfig.LOG_DEBUG)
            Timber.d(msg);
    }

    public static void d(String tag, String msg, Throwable tr) {
        if (BuildConfig.LOG_DEBUG)
            Timber.tag(tag).d(tr, msg);
    }

    public static void i(String msg) {
        if (BuildConfig.LOG_DEBUG)
            Timber.i(msg);
    }

    public static void i(String tag, String msg) {
        if (BuildConfig.LOG_DEBUG)
            Timber.tag(tag).i(msg);
    }

    public static void i(String tag, String msg, Throwable tr) {
        if (BuildConfig.LOG_DEBUG)
            Timber.tag(tag).i(tr, msg);
    }

    public static void w(String msg) {
        if (BuildConfig.LOG_DEBUG)
            Timber.w(msg);
    }

    public static void w(String tag, String msg) {
        if (BuildConfig.LOG_DEBUG)
            Timber.tag(tag).w(msg);
    }

    public static void w(String tag, String msg, Throwable tr) {
        if (BuildConfig.LOG_DEBUG)
            Timber.tag(tag).w(tr, msg);
    }

    public static void wtf(String tag, Throwable tr) {
        if (BuildConfig.LOG_DEBUG)
            Timber.tag(tag).wtf(tr);
    }

    public static void wtf(String tag, String msg) {
        if (BuildConfig.LOG_DEBUG)
            Timber.tag(tag).wtf(msg);
    }

    public static void wtf(String tag, String msg, Throwable tr) {
        if (BuildConfig.LOG_DEBUG)
            Timber.tag(tag).wtf(tr, msg);
    }

    public static void w(String tag, Throwable tr) {
        if (BuildConfig.LOG_DEBUG)
            Timber.tag(tag).w(tr);
    }


    public static void e(String tag, String msg) {
        if (BuildConfig.LOG_DEBUG) {
            Timber.tag(tag).e(msg);
        }

    }

    public static void e(String msg) {
        if (BuildConfig.LOG_DEBUG) {
            Timber.e(msg);
        }
    }

    public static void e(String tag, String msg, Throwable tr) {
        if (BuildConfig.LOG_DEBUG)
            Timber.tag(tag).e(tr, msg);
    }

    public static void e(String msg, Throwable tr) {
        if (BuildConfig.LOG_DEBUG)
            Timber.e(tr, msg);
    }

    public static long getTime(long lastTime) {
        return System.currentTimeMillis() - lastTime;
    }
}
